home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Libris Britannia 4
/
science library(b).zip
/
science library(b)
/
MEDICAL
/
2608A.ZIP
/
GP.ZIP
/
75LABCRD.SRC
< prev
next >
Wrap
Text File
|
1990-11-03
|
4KB
|
270 lines
;\|
;75LABCRD.SRC Translated from 75LABCRD.EDT by Roger Mathew's EDT2SRC Ver 4.11
;START 12:13:35 PM 21/ 6/90 |
RECALLSX:
define(Z30|A|30||)
define(YES.NO|A|1||)
define(CHK_FLD|N|8||)
define(NUM_N|N|2||)
define(NUM|A|2||)
define(DATE_A|A|8||)
define(DATE_B|A|10||)
define(TO_DATE|S|8||)
define(WAIT|N|3||)
define(MEM_AD|A|22||)
define(SENT_DATE|S|8||)
define(CHK_DATE|S|8||)
define(PUNC2|N|2||)
define(CH_NAME|A|15||)
define(HIS|A|3||)
define(CLIN_DAY|A|25||)
define(CLIN_TIME|A|10||)
define(CNTR|N|2||)
define(FLAG|A|1||)
define(AMOUNTX|N|4||)
define(S10|A|10||)
define(DATECOD|S|8||)
define(CODER|A|5||)
define(C30|A|30||)
define(TM|A|27||4)
define(A30|A|30||)
define(CHOICE|N|1||)
define(TDND|S|8||)
define(DATERP|S|8||)
define(B30|A|30||)
define(S1|A|1||)
define(TD|S|8||)
define(A8|A|8||)
define(B8|A|8||)
define(YES.NO|A|1||)
define(N5|N|5||)
define(D1|A|1||)
define(NY|A|1||)
define(CODEX1|S|8||)
define(CTR|N|2||)
define(DATEN|N|2||)
define(DATEX|d|10||)
define(ARRAY1|A|30||3)
define(ARRAY2|A|22||3)
define(ARRAY3|A|22||3)
define(ARRAY4|A|4||3)
define(ARRAY5|S|8||3)
define(TIT|A|4||)
define(PATIENT1A|A|30||)
define(PUNC1|N|2||)
define(N.2.0.P|N|2||)
define(P.2.0.1|N|2||)
define(P.2.0.2|N|2||)
define(PATIENT2|A|30||)
define(P.2.0.3|N|2||)
define(RECTYPE1|A|4||)
define(RECTYPE2|A|4||)
define(PATIENT1|A|30||)
define(DOB1|D|10||)
define(DOB2|D|10||)
STARTREC:
open(PATIENT||0|exit)
open(diabetic||0|exit)
open(GPSETUP||0|)
date(TD|G)
trap(q|g|exit)
trap(S|I)
trap(D|I)
trap(F|I)
trap(R|I)
trap(B|I)
trap(G|I)
trap(M|I)
trap(N|I)
LASTSEEN:
mount(LABS|S)
MEM_AD = ("1")
enter(MEM_AD||||Y|N|N|||N)
enter(DOB1||||N|N|N|||N)
enter(DOB2||||N|N|N|||N)
enter(datex||||n|n|n|||n)
SENT_DATE = (TD)
enter(YES.NO|"YN"|||Y|Y|N|||N)
if YES.NO <> ("Y") goto LASTSEEN
gosub RECLABS
ADDRESS1 = (MEM_AD)
find(G|ADDRESS1|EXIT|)
TEST_SEEN:
if DATE.OF.BIRTH < (DOB1) goto NEXT_SEEN
if DATE.OF.BIRTH > (DOB2) goto NEXT_SEEN
diab_ref = (record.number)
find(m|diab_ref|continue|)
if chk_date > (datex) do
{
visit = ("V")
goto not_sent
}
continue:
gosub PRINT_SEEN
VISIT = ("S")
not_sent:
if DATE_SEEN > (SEEN) then SEEN = (DATE_SEEN)
SENT_FOR = (SENT_DATE)
save(PATIENT|N|N)
find(M|ADDRESS1||)
NEXT_SEEN:
find(N|PATIENT|EXIT|)
pmsg(RECORD.NUMBER|1|1|N|N|S|)
goto TEST_SEEN
PRINT_SEEN:
gosub SEXIST
gosub NEWX
gosub SEEN_PRINT
ret
SEEN_PRINT:
WAIT = (WAIT+1)
if WAIT = (195) do
{
pmsg(WAIT;" printed - change cards and press ret..."|10|20|Y|N|S|)
WAIT = (0)
}
pblnk(6)
pfmt(1|||N|N|)
pblnk(2)
pfmt(2|||N|N|)
pblnk(2)
pfmt(3|||N|N|)
pblnk(4)
pfmt(4|||N|N|)
ret
SEXIST:
if SEX = ("M") then TIT = ("Mr.")
if SEX = ("F") do
{
if MARITAL.STATUS = ("M") do
{
TIT = ("Mrs.")
}
else
{
TIT = ("Ms.")
}
}
if SEX = ("") then TIT = ("Ms.")
trim(TIT|T)
ret
NEWX:
NY = (" ")
PATIENT1A = (PATIENT.NAME)
trim(PATIENT1A|T)
PUNC1 =loc(","|PATIENT1A|1||27)
N.2.0.P =siz(A|PATIENT.NAME)
P.2.0.1 = (PUNC1-1)
PATIENT2 =mid(PATIENT.NAME|1|P.2.0.1|)
P.2.0.2 = (PUNC1+2)
P.2.0.3 = (N.2.0.P-P.2.0.2+1)
PATIENT1 =mid(PATIENT1A|P.2.0.2|P.2.0.3|)
trim(PATIENT1|T)
trim(PATIENT2|T)
Z30 = (TIT+PATIENT1+NY+PATIENT2)
ret
EXIT:
run("recmenu")
EXIT1:
run("recmenu")
PRINTSTOP:
pon(S)
clrlne(1|25)
pmsg("CONTINUE ? (Y/N):"|30|12|N|N|S|)
enter(YES.NO|"YN"||PRINTSTOP|Y|Y|N|48|12|N)
if YES.NO <> ("Y") then run("recmenu")
pon(P)
ret
reclabs:
trap(p|d|)
pchr(p|4)
mount(new|r|p|)
pset(50|18|18)
ret
\STLABS
PRINTS ADDRESSES ON CARDS FOR 75 VISIT
┌───────────────────────────────────────┐
│ From Address:& │
│ From Dob :& eg 01/01/1880 │
│ To Dob :& eg 01/04/1914 │
│ Year Start :& eg 01/04/1990 │
│ CONTINUE:& │
└───────────────────────────────────────┘
REQUIRES CARDS IN PRINTER REVERSE SIDE
Esc - Exit or stop printing
\
MEM_AD
DOB1
DOB2
DATEX
YES.NO
\
\R NEW
&
&
&
-
\
Z30
ADDRESS1
AREA
\